#include "hip/hip_runtime.h"

extern "C" __global__ void SinhCustomKernel(const half* input, half* output, size_t numElements) {
    size_t idx = hipBlockIdx_x * hipBlockDim_x + hipThreadIdx_x;
    if (idx < numElements) {
        half x = input[idx];
        half exp_x = hexp(x);
        half exp_neg_x = hexp(-x);
        output[idx] = (exp_x - exp_neg_x) / 2.0;
    }
}
